home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-06 / segue.exe / NSPLSRV.PRG < prev    next >
Text File  |  1991-10-29  |  2KB  |  55 lines

  1. *.............................................................................
  2. *
  3. *   Program Name: NSPLSRV.PRG       Copyright: HRF Associates, Inc.
  4. *   Date Created: 10/28/11           Language: Clipper
  5. *   Time Created: 23:57:54             Author: Bob Fogle
  6. *
  7. *.............................................................................
  8. * Supplemental SEGUE function for seting or resetting target server for spooling.
  9. * Functionally equivilent to N_SPLSRV function in NETLIB library.
  10. *
  11. FUNCTION NSPLSRV_
  12. * Purpose: To select the capture spool queue for the currently selected printer.
  13. * Usage     : NSPLSRV_([<expC>|OFF])
  14. *        :
  15. * Where  : <expC> = Server name.
  16. *        : OFF resets spool server to current server.
  17. *        :
  18. PARAMETERS srvr
  19. LOCAL msrvr, fsnames[0]
  20. PRIVATE rtn :=0
  21.  
  22. do while .t.
  23.   * Check to make sure passed variable types are correct.
  24.   if valtype(srvr)<>'C' .AND. srvr<>nil
  25.     rtn = -101
  26.     exit
  27.   endi
  28.  
  29.   * Set up defaults
  30.   msrvr = if(valtype(srvr)=='C', uppe(alltrim(srvr)),nil)
  31.  
  32.   * Build file server names array.
  33.   mstr = WEFSNM()       // Get File Server Name Table
  34.   for i=1 to 8
  35.     mpos=at(' ',mstr)
  36.     aadd(fsnames, if(mpos=0, mstr, subs(mstr,1,mpos-1)))  // Server Name
  37.     mstr= if(mpos=0, '', subs(mstr,mpos+1))
  38.   next
  39.  
  40.   * Get/Set server
  41.   if pcount()=0           // If no arguments, return current setting.
  42.     mfsno = PRJBDFG(20)   // Get Default Print Job Flags (Server Queuing Print Job - Slot number 1-8)
  43.     mfsno = if(mfsno=0,WEFSPFG(),mfsno) // Get Preferred Connection ID
  44.     rtn   = fsnames[mfsno]   // File server name array element.
  45.  
  46.   else
  47.     * Scan array of server names for match
  48.     mfsno = if(msrvr="OFF",0, ascan(fsnames,msrvr))   // Element number = server number
  49.     * If no match, Preferred server = 0 which defaults to default server.
  50.     rtn = WEFSPFS(mfsno)  // Set Preferred Connection ID
  51.   endi
  52.   exit
  53. endd
  54. RETURN rtn
  55.